package com.webermagem.DAO;

import java.io.Serializable;
import java.util.List;

import org.hibernate.Query;
import org.hibernate.Session;

import com.webermagem.model.Perfil;
import com.webermagem.util.HibernateUtil;


public class PerfilDAO extends GenericDAO implements Serializable{

	private static final long serialVersionUID = -4489823985669202674L;

	public PerfilDAO() {
	
	}
	
	@SuppressWarnings("unchecked")
	public List<Perfil> listByDescricao(Session session, String descricao) {
		
		if (session == null){
			session = HibernateUtil.getSessionFactory().openSession();
		}
		
		Query query = session.createQuery(" from Perfil where lower(descricao) like :descricao order by id");
		query.setString("descricao", "%" + descricao.toLowerCase() + "%");
		List<Perfil> objetoRetornado = query.list();
		
		session.flush();
		
		return objetoRetornado;
		
	}
	
	@SuppressWarnings("unchecked")
	public List<Perfil> listOrdenado(Session session) {
		
		if (session == null){
			session = HibernateUtil.getSessionFactory().openSession();
		}
		
		Query query = session.createQuery(" from Perfil order by id");
		List<Perfil> objetoRetornado = query.list();
		session.flush();
		
		return objetoRetornado;
		
	}
	
	
}
